/**
 *
 */
package com.vivi.codereview.actors;

/**
 * Main interface for any actor. An actor is a full scenario you can consider
 * during a code review process: developer, reviewer... The main concept is to
 * have one actor per execution, meaning since the actor finished its job, the
 * program will exit. Even if not planned by now, an actor can be combination of
 * many already existing actors.
 * 
 * @author nvillard
 * 
 */
public interface IActor {
	
	/**
	 * Returns the name of the actor.
	 * @return A String we can display to the user providing the actor name.
	 */
	public String getName();
	
	/**
	 * Method called to launch the actor.
	 * @return an integer to reflect the status of this job. 0 when success, any other integer otherwise
	 * @throws Exception
	 */
	public int process() throws Exception;

}
